package com.wenhui.schoolyardinfo.firstpage.adapter;

import android.support.annotation.NonNull;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.DefaultItemAnimator;
import android.support.v7.widget.GridLayoutManager;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.OrientationHelper;
import android.support.v7.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.FrameLayout;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.RelativeLayout;
import android.widget.TextView;

import com.bumptech.glide.Glide;
import com.wenhui.schoolyardinfo.R;
import com.wenhui.schoolyardinfo.callback.RcvOnFirstSecondThirdViewClickListener;
import com.wenhui.schoolyardinfo.callback.RcvOnFirstSecondViewClickListener;
import com.wenhui.schoolyardinfo.callback.RcvOnItemItemViewClickListener;
import com.wenhui.schoolyardinfo.callback.RcvOnItemViewClickListener;
import com.wenhui.schoolyardinfo.callback.RcvOnSecondThirdViewClickListener;
import com.wenhui.schoolyardinfo.customview.CircleImageView;
import com.wenhui.schoolyardinfo.firstpage.bean.BlogBean;
import com.wenhui.schoolyardinfo.firstpage.bean.MineAlbumBean;
import com.wenhui.schoolyardinfo.firstpage.holder.SmartViewContentHolder;
import com.wenhui.schoolyardinfo.manager.DateManager;
import com.wenhui.schoolyardinfo.manager.LogManager;
import com.wenhui.schoolyardinfo.mine.bean.PersonalDataBean;

import java.util.ArrayList;
import java.util.List;

import butterknife.BindView;
import butterknife.ButterKnife;

/**
 * author    : Urasaki
 * e-mail    : 1164688204@qq.com
 * date      : 2019/7/2 09:37
 * introduce : 个人主页Adapter
 */

public class HomePageAdapter extends RecyclerView.Adapter {

    private static final String TAG = "HomePageAdapter";
    private AppCompatActivity appCompatActivity;
    private PersonalDataBean personalDataBean;
    private String child;
    private List<BlogBean> blogBeanList = new ArrayList<>();

    private List<MineAlbumBean> mineAlbumBeanList = new ArrayList<>();
    private CommentsAdapter commentsAdapter;
    private LinearLayoutManager layoutManager;
    private BaseRecyclerAdapter<MineAlbumBean> baseRecyclerAdapter;
    private static final int HEADER_FIRST_VIEW_TYPE = 1;
    private static final int HEADER_SECOND_VIEW_TYPE = 2;
    private static final int CONTENT_FIRST_VIEW_TYPE = 3;
    private static final int CONTENT_SECOND_VIEW_TYPE = 4;

    public HomePageAdapter(AppCompatActivity appCompatActivity) {
        this.appCompatActivity = appCompatActivity;
    }

    public HomePageAdapter(AppCompatActivity appCompatActivity, PersonalDataBean personalDataBean, String child, List<BlogBean> blogBeanList, List<MineAlbumBean> mineAlbumBeanList) {
        this.appCompatActivity = appCompatActivity;
        this.personalDataBean = personalDataBean;
        this.child = child;
        this.blogBeanList = blogBeanList;
        this.mineAlbumBeanList = mineAlbumBeanList;
    }

    public void clearData() {
        blogBeanList.clear();
        mineAlbumBeanList.clear();
        notifyDataSetChanged();
    }

    public void addAllData(String child, PersonalDataBean personalDataBean, List<BlogBean> blogBeanList, List<MineAlbumBean> mineAlbumBeanList) {
        this.child = child;
        this.personalDataBean = personalDataBean;
        if ("homePage".equals(child)) {
            this.blogBeanList.addAll(blogBeanList);
        } else if ("photoAlbum".equals(child)) {
            this.mineAlbumBeanList.addAll(mineAlbumBeanList);
        }
        notifyDataSetChanged();
    }

    @NonNull
    @Override
    public RecyclerView.ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
        View view;
        switch (viewType) {
            case HEADER_FIRST_VIEW_TYPE:
                view = LayoutInflater.from(appCompatActivity).inflate(R.layout.item_home_page_header_first, parent, false);
                return new HeaderFirstHolder(view);
            case HEADER_SECOND_VIEW_TYPE:
                view = LayoutInflater.from(appCompatActivity).inflate(R.layout.item_home_page_header_second, parent, false);
                return new HeaderSecondHolder(view);
            case CONTENT_FIRST_VIEW_TYPE:
                view = LayoutInflater.from(appCompatActivity).inflate(R.layout.item_blog, parent, false);
                return new ContentFirstHolder(view);
            default:
                view = LayoutInflater.from(appCompatActivity).inflate(R.layout.item_photo_album, parent, false);
                return new ContentSecondHolder(view);
        }
    }

    @Override
    public void onBindViewHolder(@NonNull RecyclerView.ViewHolder holder, final int position) {
        if (holder instanceof HeaderFirstHolder) {
            HeaderFirstHolder headerFirstHolder = (HeaderFirstHolder) holder;
            Glide.with(appCompatActivity).load(personalDataBean.getHeadPortraitUrl()).into(headerFirstHolder.imvMineHeadPortrait);
            headerFirstHolder.tevName.setText(personalDataBean.getName());
            headerFirstHolder.tevPersonalSignature.setText(personalDataBean.getPersonalSignature());
            headerFirstHolder.tevSchool.setText(personalDataBean.getSchool());
            headerFirstHolder.tevAge.setText(personalDataBean.getAge() + "岁");
            headerFirstHolder.tevConcernNum.setText("关注 110");
            headerFirstHolder.tevFansNum.setText("粉丝 150");

        } else if (holder instanceof HeaderSecondHolder) {
            HeaderSecondHolder headerSecondHolder = (HeaderSecondHolder) holder;

        } else if (holder instanceof ContentFirstHolder) {
            ContentFirstHolder contentFirstHolder = (ContentFirstHolder) holder;
            //加载头像
            Glide.with(appCompatActivity).load(blogBeanList.get(position - 2).getHeadPortraitUrl()).into(contentFirstHolder.imvHeadPortrait);
            contentFirstHolder.tevName.setText(blogBeanList.get(position - 2).getName());
            contentFirstHolder.tevTime.setText(DateManager.millisecondConvertedToDate(blogBeanList.get(position - 2).getTime()));
            contentFirstHolder.tevPublishText.setText(blogBeanList.get(position - 2).getPublishMessage());
            //加载风景
            if (blogBeanList.get(position - 2).getSceneryUrlList() != null && blogBeanList.get(position - 2).getSceneryUrlList().size() > 0) {
                contentFirstHolder.layoutScenery.setVisibility(View.VISIBLE);
                switch (blogBeanList.get(position - 2).getSceneryUrlList().size()) {
                    case 1:
                        contentFirstHolder.layoutSceneryI.setVisibility(View.VISIBLE);
                        contentFirstHolder.layoutSceneryIi.setVisibility(View.GONE);
                        contentFirstHolder.layoutSceneryIii.setVisibility(View.GONE);
                        Glide.with(appCompatActivity).load(blogBeanList.get(position - 2).getSceneryUrlList().get(0)).into(contentFirstHolder.imvSceneryIA);
                        break;
                    case 2:
                        contentFirstHolder.layoutSceneryI.setVisibility(View.GONE);
                        contentFirstHolder.layoutSceneryIi.setVisibility(View.VISIBLE);
                        contentFirstHolder.layoutSceneryIii.setVisibility(View.GONE);
                        Glide.with(appCompatActivity).load(blogBeanList.get(position - 2).getSceneryUrlList().get(0)).into(contentFirstHolder.imvSceneryIiA);
                        Glide.with(appCompatActivity).load(blogBeanList.get(position - 2).getSceneryUrlList().get(1)).into(contentFirstHolder.imvSceneryIiB);
                        break;
                    case 3:
                        contentFirstHolder.layoutSceneryI.setVisibility(View.GONE);
                        contentFirstHolder.layoutSceneryIi.setVisibility(View.GONE);
                        contentFirstHolder.layoutSceneryIii.setVisibility(View.VISIBLE);
                        Glide.with(appCompatActivity).load(blogBeanList.get(position - 2).getSceneryUrlList().get(0)).into(contentFirstHolder.imvSceneryIiiA);
                        Glide.with(appCompatActivity).load(blogBeanList.get(position - 2).getSceneryUrlList().get(1)).into(contentFirstHolder.imvSceneryIiiB);
                        Glide.with(appCompatActivity).load(blogBeanList.get(position - 2).getSceneryUrlList().get(2)).into(contentFirstHolder.imvSceneryIiiC);
                        break;
                    default:
                        break;
                }
            } else {
                contentFirstHolder.layoutScenery.setVisibility(View.GONE);
            }

            contentFirstHolder.tevLabel.setText(blogBeanList.get(position - 2).getLabel());
            contentFirstHolder.tevFireNum.setText(blogBeanList.get(position - 2).getFireNum() + "");
            contentFirstHolder.tevFeelingNum.setText(blogBeanList.get(position - 2).getFeelingNum() + "");
            contentFirstHolder.tevCommentNum.setText(blogBeanList.get(position - 2).getCommentNum() + "");
            contentFirstHolder.tevSharedNum.setText(blogBeanList.get(position - 2).getSharedNum() + "");
            if (position - 2 == blogBeanList.size() - 1) {
                contentFirstHolder.viewBlog.setVisibility(View.GONE);
            } else {
                contentFirstHolder.viewBlog.setVisibility(View.VISIBLE);
            }

            layoutManager = new LinearLayoutManager(appCompatActivity);
            layoutManager.setOrientation(OrientationHelper.VERTICAL);
            contentFirstHolder.commentRecyclerView.setLayoutManager(layoutManager);
            contentFirstHolder.commentRecyclerView.setItemAnimator(new DefaultItemAnimator());
            commentsAdapter = new CommentsAdapter(appCompatActivity, blogBeanList.get(position - 2).getCommentBeanList());
            contentFirstHolder.commentRecyclerView.setAdapter(commentsAdapter);
            commentsAdapter.setRcvOnItemItemViewClickListener(new RcvOnItemItemViewClickListener() {
                @Override
                public void onItemItemClickListener(int position2, View view) {
                    rcvOnFirstSecondViewClickListener.onItemItemClickListener(position, position2, view);
                }
            });
            commentsAdapter.setRcvOnSecondThirdViewClickListener(new RcvOnSecondThirdViewClickListener() {
                @Override
                public void onItemItemItemClickListener(int position2, int position3, View view) {
                    rcvOnFirstSecondThirdViewClickListener.onItemItemItemClickListener(position, position2, position3, view);
                }
            });
        } else if (holder instanceof ContentSecondHolder) {
            ContentSecondHolder contentSecondHolder = (ContentSecondHolder) holder;
            layoutManager = new GridLayoutManager(appCompatActivity, 2);
//                layoutManager.setOrientation(OrientationHelper.VERTICAL);
            LogManager.i(TAG, "holder instanceof ContentSecondHolder*****");
            contentSecondHolder.mineRecyclerView.setItemAnimator(new DefaultItemAnimator());
            contentSecondHolder.mineRecyclerView.setLayoutManager(layoutManager);
            baseRecyclerAdapter = new BaseRecyclerAdapter<MineAlbumBean>(R.layout.item_mine_album_content, 1) {
                @Override
                protected void onBindViewHolder(RecyclerView.ViewHolder holder, MineAlbumBean model, final int position2) {
                    if (holder instanceof SmartViewContentHolder) {
                        SmartViewContentHolder smartViewContentHolder = (SmartViewContentHolder) holder;
                        ImageView imvAlbum = smartViewContentHolder.getView(R.id.imv_photo_album);
                        Glide.with(appCompatActivity)
                                .load(model.getPhotoBeanList().get(0).getPhotoUrl())
                                .into(imvAlbum);
                        imvAlbum.setOnClickListener(new View.OnClickListener() {
                            @Override
                            public void onClick(View view) {
                                rcvOnFirstSecondViewClickListener.onItemItemClickListener(position, position2, view);
                            }
                        });

                        smartViewContentHolder.text(R.id.tev_photo_album_name, model.getAlbumName());
                        smartViewContentHolder.text(R.id.tev_photo_album_num, model.getPhotoNum() + "张");
                        smartViewContentHolder.text(R.id.tev_photo_album_jurisdiction, model.getAlbumJurisdiction());

                        LogManager.i(TAG, "holder instanceof ContentSecondHolder*****aa");
                    }
                }
            };
            contentSecondHolder.mineRecyclerView.setAdapter(baseRecyclerAdapter);

            baseRecyclerAdapter.clearData();
            baseRecyclerAdapter.addAllData(mineAlbumBeanList);
        }
    }

    @Override
    public int getItemViewType(int position) {
        if ("homePage".equals(child)) {
            if (blogBeanList != null && blogBeanList.size() > 0) {//如果blogBeanList有数据
                if (position == 0) {
                    return HEADER_FIRST_VIEW_TYPE;
                } else if (position == 1) {
                    return HEADER_SECOND_VIEW_TYPE;
                } else {
                    return CONTENT_FIRST_VIEW_TYPE;
                }
            } else {//如果blogBeanList无数据
                if (position == 0) {
                    return HEADER_FIRST_VIEW_TYPE;
                } else {
                    return HEADER_SECOND_VIEW_TYPE;
                }
            }
        } else {
            if (mineAlbumBeanList != null && mineAlbumBeanList.size() > 0) {//如果photoAlbumBeanList有数据
                if (position == 0) {
                    return HEADER_FIRST_VIEW_TYPE;
                } else if (position == 1) {
                    return HEADER_SECOND_VIEW_TYPE;
                } else {
                    return CONTENT_SECOND_VIEW_TYPE;
                }
            } else {//如果photoAlbumBeanList无数据
                if (position == 0) {
                    return HEADER_FIRST_VIEW_TYPE;
                } else {
                    return HEADER_SECOND_VIEW_TYPE;
                }
            }
        }
    }

    @Override
    public int getItemCount() {
        if ("homePage".equals(child)) {
            return blogBeanList.size() + 2;
        } else {
            return 1 + 2;
        }
    }

    protected class HeaderFirstHolder extends RecyclerView.ViewHolder implements View.OnClickListener {

        @BindView(R.id.imv_mine_head_portrait)
        CircleImageView imvMineHeadPortrait;
        @BindView(R.id.tev_name)
        TextView tevName;
        @BindView(R.id.tev_personal_signature)
        TextView tevPersonalSignature;
        @BindView(R.id.tev_label)
        TextView tevLabel;
        @BindView(R.id.layout_label)
        RelativeLayout layoutLabel;
        @BindView(R.id.tev_school)
        TextView tevSchool;
        @BindView(R.id.layout_school)
        RelativeLayout layoutSchool;
        @BindView(R.id.tev_age)
        TextView tevAge;
        @BindView(R.id.layout_age)
        RelativeLayout layoutAge;
        @BindView(R.id.tev_concern_add)
        TextView tevConcernAdd;
        @BindView(R.id.layout_concern_add)
        RelativeLayout layoutConcernAdd;
        @BindView(R.id.tev_concern_num)
        TextView tevConcernNum;
        @BindView(R.id.view_split_line)
        View viewSplitLine;
        @BindView(R.id.tev_fans_num)
        TextView tevFansNum;

        private HeaderFirstHolder(View itemView) {
            super(itemView);
            ButterKnife.bind(this, itemView);

            imvMineHeadPortrait.setOnClickListener(this);
            layoutConcernAdd.setOnClickListener(this);
        }

        @Override
        public void onClick(View view) {
            switch (view.getId()) {
                case R.id.imv_mine_head_portrait:
                    rcvOnItemViewClickListener.onItemClickListener(getAdapterPosition(), view);
                    break;
                case R.id.layout_concern_add:
                    rcvOnItemViewClickListener.onItemClickListener(getAdapterPosition(), view);
                    break;
                default:
                    break;
            }
        }
    }

    protected class HeaderSecondHolder extends RecyclerView.ViewHolder implements View.OnClickListener {

        @BindView(R.id.tev_home_page)
        TextView tevHomePage;
        @BindView(R.id.view_home_page)
        View viewHomePage;
        @BindView(R.id.layout_home_page)
        RelativeLayout layoutHomePage;
        @BindView(R.id.tev_photo_album)
        TextView tevPhotoAlbum;
        @BindView(R.id.view_photo_album)
        View viewPhotoAlbum;
        @BindView(R.id.layout_photo_album)
        RelativeLayout layoutPhotoAlbum;

        private HeaderSecondHolder(View itemView) {
            super(itemView);
            ButterKnife.bind(this, itemView);

            layoutHomePage.setOnClickListener(this);
            layoutPhotoAlbum.setOnClickListener(this);
        }

        @Override
        public void onClick(View view) {
            switch (view.getId()) {
                case R.id.layout_home_page:
                    tevHomePage.setTextSize(21);
                    tevHomePage.setTextColor(appCompatActivity.getResources().getColor(R.color.colorBlackA));
                    viewHomePage.setVisibility(View.VISIBLE);
                    tevPhotoAlbum.setTextSize(18);
                    tevPhotoAlbum.setTextColor(appCompatActivity.getResources().getColor(R.color.colorGrayA));
                    viewPhotoAlbum.setVisibility(View.GONE);
                    rcvOnItemViewClickListener.onItemClickListener(getAdapterPosition(), view);
                    break;
                case R.id.layout_photo_album:
                    tevHomePage.setTextSize(18);
                    tevHomePage.setTextColor(appCompatActivity.getResources().getColor(R.color.colorGrayA));
                    viewHomePage.setVisibility(View.GONE);
                    tevPhotoAlbum.setTextSize(21);
                    tevPhotoAlbum.setTextColor(appCompatActivity.getResources().getColor(R.color.colorBlackA));
                    viewPhotoAlbum.setVisibility(View.VISIBLE);
                    rcvOnItemViewClickListener.onItemClickListener(getAdapterPosition(), view);
                    break;
                default:
                    break;
            }
        }
    }

    protected class ContentFirstHolder extends RecyclerView.ViewHolder implements View.OnClickListener {

        @BindView(R.id.imv_head_portrait)
        CircleImageView imvHeadPortrait;
        @BindView(R.id.tev_name)
        TextView tevName;
        @BindView(R.id.tev_time)
        TextView tevTime;
        @BindView(R.id.tev_come_from)
        TextView tevComeFrom;
        @BindView(R.id.imv_more)
        ImageView imvMore;
        @BindView(R.id.layout_more)
        RelativeLayout layoutMore;
        @BindView(R.id.tev_publish_text)
        TextView tevPublishText;
        @BindView(R.id.imv_scenery_i_a)
        ImageView imvSceneryIA;
        @BindView(R.id.layout_scenery_i)
        RelativeLayout layoutSceneryI;
        @BindView(R.id.imv_scenery_ii_a)
        ImageView imvSceneryIiA;
        @BindView(R.id.imv_scenery_ii_b)
        ImageView imvSceneryIiB;
        @BindView(R.id.layout_scenery_ii)
        LinearLayout layoutSceneryIi;
        @BindView(R.id.imv_scenery_iii_a)
        ImageView imvSceneryIiiA;
        @BindView(R.id.imv_scenery_iii_b)
        ImageView imvSceneryIiiB;
        @BindView(R.id.imv_scenery_iii_c)
        ImageView imvSceneryIiiC;
        @BindView(R.id.layout_scenery_iii)
        LinearLayout layoutSceneryIii;
        @BindView(R.id.layout_scenery)
        FrameLayout layoutScenery;
        @BindView(R.id.tev_label)
        TextView tevLabel;
        @BindView(R.id.layout_label)
        RelativeLayout layoutLabel;
        @BindView(R.id.imv_fire)
        ImageView imvFire;
        @BindView(R.id.tev_fire_num)
        TextView tevFireNum;
        @BindView(R.id.layout_fire)
        LinearLayout layoutFire;
        @BindView(R.id.imv_feeling)
        ImageView imvFeeling;
        @BindView(R.id.tev_feeling_num)
        TextView tevFeelingNum;
        @BindView(R.id.layout_feeling)
        LinearLayout layoutFeeling;
        @BindView(R.id.imv_comment)
        ImageView imvComment;
        @BindView(R.id.tev_comment_num)
        TextView tevCommentNum;
        @BindView(R.id.layout_comment)
        LinearLayout layoutComment;
        @BindView(R.id.imv_share)
        ImageView imvShare;
        @BindView(R.id.tev_shared_num)
        TextView tevSharedNum;
        @BindView(R.id.layout_shared)
        LinearLayout layoutShared;
        @BindView(R.id.comment_recycler_view)
        RecyclerView commentRecyclerView;
        @BindView(R.id.imv_spread)
        ImageView imvSpread;
        @BindView(R.id.layout_spread)
        RelativeLayout layoutSpread;
        @BindView(R.id.view_blog)
        View viewBlog;

        private ContentFirstHolder(View itemView) {
            super(itemView);
            ButterKnife.bind(this, itemView);

            imvHeadPortrait.setOnClickListener(this);
            layoutMore.setOnClickListener(this);
            layoutFire.setOnClickListener(this);
            layoutFeeling.setOnClickListener(this);
            layoutComment.setOnClickListener(this);
            layoutShared.setOnClickListener(this);
            layoutSpread.setOnClickListener(this);
            imvSceneryIA.setOnClickListener(this);
            imvSceneryIiA.setOnClickListener(this);
            imvSceneryIiB.setOnClickListener(this);
            imvSceneryIiiA.setOnClickListener(this);
            imvSceneryIiiB.setOnClickListener(this);
            imvSceneryIiiC.setOnClickListener(this);
        }

        @Override
        public void onClick(View view) {
            switch (view.getId()) {
                case R.id.imv_head_portrait:
                    rcvOnItemViewClickListener.onItemClickListener(getAdapterPosition(), view);
                    break;
                case R.id.layout_more:
                    rcvOnItemViewClickListener.onItemClickListener(getAdapterPosition(), view);
                    break;
                case R.id.layout_fire:
                    rcvOnItemViewClickListener.onItemClickListener(getAdapterPosition(), view);
                    break;
                case R.id.layout_feeling:
                    rcvOnItemViewClickListener.onItemClickListener(getAdapterPosition(), view);
                    break;
                case R.id.layout_comment:
                    rcvOnItemViewClickListener.onItemClickListener(getAdapterPosition(), view);
                    break;
                case R.id.layout_shared:
                    rcvOnItemViewClickListener.onItemClickListener(getAdapterPosition(), view);
                    break;
                case R.id.layout_spread:
                    rcvOnItemViewClickListener.onItemClickListener(getAdapterPosition(), view);
                    break;
                case R.id.imv_scenery_i_a:
                    rcvOnItemViewClickListener.onItemClickListener(getAdapterPosition(), view);
                    break;
                case R.id.imv_scenery_ii_a:
                    rcvOnItemViewClickListener.onItemClickListener(getAdapterPosition(), view);
                    break;
                case R.id.imv_scenery_ii_b:
                    rcvOnItemViewClickListener.onItemClickListener(getAdapterPosition(), view);
                    break;
                case R.id.imv_scenery_iii_a:
                    rcvOnItemViewClickListener.onItemClickListener(getAdapterPosition(), view);
                    break;
                case R.id.imv_scenery_iii_b:
                    rcvOnItemViewClickListener.onItemClickListener(getAdapterPosition(), view);
                    break;
                case R.id.imv_scenery_iii_c:
                    rcvOnItemViewClickListener.onItemClickListener(getAdapterPosition(), view);
                    break;
                default:
                    break;
            }
        }
    }

    protected class ContentSecondHolder extends RecyclerView.ViewHolder {

        @BindView(R.id.mine_recycler_view)
        RecyclerView mineRecyclerView;

        private ContentSecondHolder(View itemView) {
            super(itemView);
            ButterKnife.bind(this, itemView);

        }
    }

    private RcvOnItemViewClickListener rcvOnItemViewClickListener;

    public void setRcvOnItemViewClickListener(RcvOnItemViewClickListener rcvOnItemViewClickListener) {
        this.rcvOnItemViewClickListener = rcvOnItemViewClickListener;
    }

    private RcvOnFirstSecondViewClickListener rcvOnFirstSecondViewClickListener;

    public void setRcvOnFirstSecondViewClickListener(RcvOnFirstSecondViewClickListener rcvOnFirstSecondViewClickListener) {
        this.rcvOnFirstSecondViewClickListener = rcvOnFirstSecondViewClickListener;
    }

    private RcvOnFirstSecondThirdViewClickListener rcvOnFirstSecondThirdViewClickListener;

    public void setRcvOnFirstSecondThirdViewClickListener(RcvOnFirstSecondThirdViewClickListener rcvOnFirstSecondThirdViewClickListener) {
        this.rcvOnFirstSecondThirdViewClickListener = rcvOnFirstSecondThirdViewClickListener;
    }
}
